class GetHouseAlbumByPIdModel {
  Data data;
  int code;
  String msg;

  GetHouseAlbumByPIdModel({this.data, this.code, this.msg});

  GetHouseAlbumByPIdModel.fromJson(Map<String, dynamic> json) {
    data = json['data'] != null ? new Data.fromJson(json['data']) : null;
    code = json['code'];
    msg = json['msg'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    if (this.data != null) {
      data['data'] = this.data.toJson();
    }
    data['code'] = this.code;
    data['msg'] = this.msg;
    return data;
  }
}

class Data {
  Null appId;
  int projectId;
  String projectPicId;
  String projectPicPath;
  List<Null> vrPicList;
  List<DesignPicList> designPicList;
  List<RealPicList> realPicList;
  List<TemplatePicList> templatePicList;
  List<MatchPicList> matchPicList;
  List<TrafficPicList> trafficPicList;
  List<BuildingPicList> buildingPicList;
  List<PlanPicList> planPicList;

  Data(
      {this.appId,
      this.projectId,
      this.projectPicId,
      this.projectPicPath,
      this.vrPicList,
      this.designPicList,
      this.realPicList,
      this.templatePicList,
      this.matchPicList,
      this.trafficPicList,
      this.buildingPicList,
      this.planPicList});

  Data.fromJson(Map<String, dynamic> json) {
    appId = json['appId'];
    projectId = json['projectId'];
    projectPicId = json['projectPicId'];
    projectPicPath = json['projectPicPath'];

    if (json['designPicList'] != null) {
      designPicList = new List<DesignPicList>();
      json['designPicList'].forEach((v) {
        designPicList.add(new DesignPicList.fromJson(v));
      });
    }
    if (json['realPicList'] != null) {
      realPicList = new List<RealPicList>();
      json['realPicList'].forEach((v) {
        realPicList.add(new RealPicList.fromJson(v));
      });
    }
    if (json['templatePicList'] != null) {
      templatePicList = new List<TemplatePicList>();
      json['templatePicList'].forEach((v) {
        templatePicList.add(new TemplatePicList.fromJson(v));
      });
    }
    if (json['matchPicList'] != null) {
      matchPicList = new List<MatchPicList>();
      json['matchPicList'].forEach((v) {
        matchPicList.add(new MatchPicList.fromJson(v));
      });
    }
    if (json['trafficPicList'] != null) {
      trafficPicList = new List<TrafficPicList>();
      json['trafficPicList'].forEach((v) {
        trafficPicList.add(new TrafficPicList.fromJson(v));
      });
    }
    if (json['buildingPicList'] != null) {
      buildingPicList = new List<BuildingPicList>();
      json['buildingPicList'].forEach((v) {
        buildingPicList.add(new BuildingPicList.fromJson(v));
      });
    }
    if (json['planPicList'] != null) {
      planPicList = new List<PlanPicList>();
      json['planPicList'].forEach((v) {
        planPicList.add(new PlanPicList.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['appId'] = this.appId;
    data['projectId'] = this.projectId;
    data['projectPicId'] = this.projectPicId;
    data['projectPicPath'] = this.projectPicPath;

    if (this.designPicList != null) {
      data['designPicList'] =
          this.designPicList.map((v) => v.toJson()).toList();
    }
    if (this.realPicList != null) {
      data['realPicList'] = this.realPicList.map((v) => v.toJson()).toList();
    }
    if (this.templatePicList != null) {
      data['templatePicList'] =
          this.templatePicList.map((v) => v.toJson()).toList();
    }
    if (this.matchPicList != null) {
      data['matchPicList'] = this.matchPicList.map((v) => v.toJson()).toList();
    }
    if (this.trafficPicList != null) {
      data['trafficPicList'] =
          this.trafficPicList.map((v) => v.toJson()).toList();
    }
    if (this.buildingPicList != null) {
      data['buildingPicList'] =
          this.buildingPicList.map((v) => v.toJson()).toList();
    }
    if (this.planPicList != null) {
      data['planPicList'] = this.planPicList.map((v) => v.toJson()).toList();
    }
    return data;
  }
}

class DesignPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  DesignPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  DesignPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class RealPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  RealPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  RealPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class TemplatePicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  TemplatePicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  TemplatePicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class MatchPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  MatchPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  MatchPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class TrafficPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  TrafficPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  TrafficPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class BuildingPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  BuildingPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  BuildingPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}

class PlanPicList {
  String picId;
  String httpPath;
  Null picUrl;
  Null imageType;
  String type;

  PlanPicList(
      {this.picId, this.httpPath, this.picUrl, this.imageType, this.type});

  PlanPicList.fromJson(Map<String, dynamic> json) {
    picId = json['picId'];
    httpPath = json['httpPath'];
    picUrl = json['picUrl'];
    imageType = json['imageType'];
    type = json['type'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['picId'] = this.picId;
    data['httpPath'] = this.httpPath;
    data['picUrl'] = this.picUrl;
    data['imageType'] = this.imageType;
    data['type'] = this.type;
    return data;
  }
}
